Equipment and process for music digitalization, storage, access and listening

ABSTRACT

The invention relates to equipment and process for music digitalization, storage, access and listening, which equipment includes a digital music server ( 1 ), a music digitizing station ( 2 ), and a variable and convenient number of listening stations ( 3 ), the latter being interlinked to the server ( 1 ) and to the station ( 1 ) by the local network ( 4 ), it being also provided a central (or remote) digital music server ( 1 A), said local ( 1 ) and central (or remote) ( 1 A) digital music servers being a microcomputer with a large hard disk capacity for storing the digitized songs, and to centralize, in a database, all the information in the digitized CDs; said improvements also to allow the inclusion of more than one digital music server ( 1 ) and more than one digitizing station ( 2 ), and to allow only one microcomputer to be the digital music server ( 1 ) and the digitizing station ( 2 ), at the same time.

BACKGROUND OF THE INVENTION

The applicant is the assignee of the U.S. Pat. No. 6,437,229, filed onNov. 17, 2000 and granted on Aug. 20, 2002, and it relates to anEQUIPMENT AND PROCESS FOR MUSIC DIGITALIZATION, STORAGE, ACCESS, ANDLISTENING, which equipment and process are to be employed in anycommercial establishments trading CDs, in order to enable users tolisten to all the songs from all the CDs available at the store.

Said equipment and process are based on the digitizing of the songs andtheir storage in a hard disk for later access and hearing.

As a rule, they provide for one or more digital music servers(microcomputers where the songs from digitized CDs shall be stored), oneor more music digitizing stations (microcomputers in charge ofdigitizing one passage of each song from each CD), and a number oflistening stations (microcomputers through which the songs digitized inservers may be accessed and listened by users).

Each listening station, provided with an earphone, a keyboard withdisplay, and a bar code reader, communicates via local network with theservers.

Each CD is provided with a bar code tag that identifies it on anindividual basis, on an unmistakably way.

In proceeding with its studies, the Applicant developed now improvementsto said equipment and process for music digitalization, storage, access,and listening, which improvements are employed in the digital musicserver, the music digitizing station, and listening stations.

SUMMARY AND OBJECTS OF THE INVENTION

So, pursuant to these improvements, when the user desires to listen tosome song from a particular CD, the same shall have only to pass the barcode of said CD by the bar code reader in a listening station, by whichthe information of artist and title, and the song files of such CD, arequickly located. The first song file available is then sent to thelistening station, which starts its reproduction (play) in the earphone.Following, using the keyboard and display, the user selects the desiredtrack, and controls sound volume.

Likewise, pursuant to these improvements, the song file selected isdownloaded in small blocks to the listening station, on demand of thelatter, which starts its reproduction (play) as soon as the first blockis received. So, the user starts to listen the song in the earphone fromthe listening station, without having to wait for the whole filedownloading. The listening station automatically requests the next songfile block, in a manner that reproduction is not interrupted.

Likewise, pursuant to these improvements, the local server is providedwith a control software that controls the listening stations' entireoperation through commands and messages determined between it and thelistening stations, which control software embodies a function thatallows certain listening stations, on a configurable basis, to reproduceonly particular CDs.

Another innovation introduced by these improvements consists in usingone central (or remote) digital music server.

Besides, another innovation consists in using a “download” software thatbrings from the central (or remote) server, the information in the CDand its song files, as regards CDs not existing in the local server andthat have been requested for listening at the listening stations.

Pursuant to these improvements, the equipment is provided with amaintenance software for the local server, installed in the local serveritself, and with a maintenance software for the central (or remote)server, installed in the digitizing station.

Formerly, the local server maintenance software was installed in thedigitizing station; then said local server maintenance software wastransferred to the local server itself, because in the equipment herebyimproved, the local server is a mandatory one, while the digitizingstation is optional.

So, the maintenance software executed in the song digitizing station isthe “central (or remote) server maintenance software”, and themaintenance software installed in the local server is the “local servermaintenance software”.

In fact, both the “local server maintenance software” and the “central(or remote) server maintenance software” may be installed in the localserver or in the digitizing station; however, it is more logic toinstall the “local server maintenance software” in the local server,once it may exist a system without the digitizing station in the localnetwork (not with standing the local server always exists), and the“central (or remote) server maintenance software” in the digitizingstation, once such station may play the role of the station that carriesout the digitizing and accesses the central (or remote) server forupdating data related to digitized CDs.

The central (or remote) server maintenance software installed in thedigitizing station has the function of providing maintenance in thetable of CDs and song files of the central (or remote) server, in amanner analog to that of the local server maintenance software embodiedin the local server itself.

Likewise, pursuant to the improvements in question, the local server isprovided with a software for updating the statistic data (statisticupload software), the function of which is to input the listeningstations' usage statistic data in the central (or remote) server.

Also pursuant to these improvements, the digitizing station is furtherprovided with a data updating software (upload software), which enablesthe central (or remote) server to be updated with the information andsong files of the CDs digitized and recorded in the local server or inthe digitizing station itself.

Based on the simplicity and low cost philosophy, this inventionimplements the listening station through an architecture different fromthose in the existing systems in the market, where, among otherimportant features, we may emphasize the local network interfaceembodied to the listening station.

Basically, the listening station started to be formed by dedicatedapparatuses using a microcontroller, memory, components for audiodecoding, digital/analog conversion, serial and parallel communication,network interface, among others. By these means, the cost and physicalsize of the listening station have been drastically reduced incomparison with the conventional implementation through compatiblemicrocomputers and boards. In addition to that, the listening stationbecame practically immune from constant alterations due to the verydynamic evolution of motherboard, processor and boards compatible withthe PC microcomputer.

Another advantage provided by the listening station of this invention isthe possibility of installing a higher and better distributed number oflistening stations throughout the commercial establishment, due to itssmaller physical size and an easier installation.

With all of those advantages, this invention enables users to listen toall songs from all CDs available at the stores, in a mannersubstantially simpler, faster, and cheaper than the solutions normallyemployed for such a purpose.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete appreciation of the present invention and many of theattendant advantages thereof will be readily understood by reference tothe following detailed description when taken in conjunction with theaccompanying drawings, in which:

FIG. 1 is a block diagram, schematically illustrating theequipment/process components hereby innovated (for illustration anddescription purposes only one (1) music server and one (1) musicdigitizing station are shown, but the system allows more than one (1)music server and more than one (1) music digitizing station, as well asit allows that only one microcomputer is the music server and thedigitizing station at the same time);

FIG. 2 illustrates the hardware block diagram of the listening station;

FIG. 3 is a flow chart of the music digitizing station, illustrating thesequence of operations for conducting music digitizing and storage atthe music server hard disk;

FIGS. 4 and 4A represent, on a continued basis, the music server flowchart;

FIGS. 5 and 5A represent, on a continued basis, the listening stationflow chart, illustrating the sequence of operations for the user toaccess and listen the desired songs;

FIG. 6 is a flow chart of the central (or remote) server updatingsoftware (upload software), illustrating the basic sequence ofoperations for updating the central (or remote) server with CDsdigitized and recorded in the local server or, eventually, in thedigitizing station itself, in the event it is not in the local networkenvironment of the listening stations and local server; and

FIG. 7 is a flow chart of the software (download software) that brings,from the central (or remote) server, the information in the CD and itssong files for CDs not existing in the local server, and which have beenrequested for listening at the listening stations, or which are includedin a list of CDs to be brought in a preset time, illustrating the basicsequence of operations.

DETAILED DESCRIPTION OF THE INVENTION

The subject matter of this Invention patent relates to an equipment andprocess for music digitalization, storage, access and listening, whichequipment, as contained in the U.S. Pat. No. 6,43 7,229 of the sameApplicant, and pursuant to the schematic illustration of the blockdiagram in FIG. 1, is formed by a digital music server (1), one musicdigitizing station (2), and a variable and convenient number oflistening stations (3), the latter being interlinked to the server (1)and to the station (2) by a local network (4), said digital music server(1) being a high capacity hard disk microcomputer for storing thedigitized songs, and to centralize, in a database, all of theinformation in the digitized CDs.

The digitizing station (2) is a microcomputer provided with a CD-ROMreader and, as an option, with a bar code reader, destined fordigitizing a passage (preferably the thirty initial seconds) from eachtrack of an audio CD, converting it in a digital coded file, andrecording it in the digital music server (1). Therefore, it is providedwith a software that allows music control and digitalization. For eachdigitized audio CD, a record with the CD information is made in saidserver database (1). Eventually, in situations where the number of CDsto be digitized is very big, options for using more than one digitizingstation may be developed.

Pursuant to these improvements, the local digital music server (1) isprovided with a control program (software) that controls the entirelistening stations' operation by means of commands and messagesdetermined between it and the listening stations. So, such a softwarerecognizes and accepts the connection request from each listeningstation, sends initial commands such as “remove cursor”, “cleandisplay”, “light display up”, send the message “Read the bar code”,receives the bar code, accesses the database for obtaining informationconcerning the CD the bar code of which has been received, sends commandfor adjusting the initial volume and, at the same time, for showing theartist, track number, time elapsed and sound volume on the display,sends the song file in blocks, so long it is requested by the listeningstation, sends the time elapsed each second for it to be shown on thedisplay, sends, from time to time and alternatively, to be shown on thedisplay, the artist, title, CD number (should there be more than one CDwith the same bar code) and the price (if available). From that momenton, the server software is ready to receive asynchronous messages fromthe listening station, which may be “song end”, time when it shall sendthe file corresponding to the next track (if it is not the last one),“next track key”, when it shall send the command for stopping thecurrent song (in the case it is reproducing any), and promptly upon sendthe file corresponding to the next track (which may be the first track,in the case it is already playing the last track of the CD), “previoustrack key”, when it shall send the command for stopping the current song(in the event it is reproducing any), and promptly upon send the filecorresponding to the previous track (which may be the last track if itis already playing CD first track), “stop key”, when it shall send thecommand for stopping reproduction (if it is reproducing any), “volume+or volume−key”, when it shall send a command for adjusting (increase ordecrease) the volume and, at the same time, show the value of the newvolume on the display, and “bar code”, when it shall operate as formerlydescribed.

As another innovation, this local server control software (1) embodies afunction that allows certain listening stations (3), in a manner capableof configuration, to reproduce only particular CDs. The purpose of thisfunction is to meet the need of certain stores to promote, together withrecorders, certain CDs launches. In such a case, these listeningstations (3) do not accept others CDs' bar code.

Moreover, that local server (1) also started to embody a local servermaintenance program (software) that allows the exclusion of CDs or songfiles corresponding to digitized tracks, the updating of data related tothe CDs in the database, the listing of digitized CDs, the generation ofa summary of the changes made during a determined date period forsimilar systems in other locations be able to be updated, the updatingof the local system through changes conducted in a system in otherlocation, the listing of statistics of access to CDs by listeningstations, so as to be possible to know, for instance, which were themore accessed tracks or CDs within a time period, or to know which werethe more used listening stations 3, and to obtain the automatic systemupdating through an autoexec CD-R containing input and output data fromCDs and respective song files.

Also pursuant to these improvements, a central (or remote) digital musicserver (1A) is further provided (see FIG. 1 again), which is also amicrocomputer with a large capacity hard disk destined to store thedigitized songs, and to centralize, in a database, all information inthe digitized CDs. Said central (or remote) server (1A) may be accessedby local servers (1) and by digitizing stations (2), via WAN (wide areanetwork) or via Internet (4A).

Another innovation introduced in the local server (1) was the embodimentof a download program (software), which brings from the central (orremote) server (1A) the information in the CD and its song files, forCDs not existing in the local server (1) and that have been requestedfor listening at the listening stations (3). That software also enablesthe search, in said central (or remote) server (1A), in a preset time,of all CDs the bar codes of which are enrolled in a list available inthe local server (1).

Also as to the innovation in the local server (1), it is provided with aprogram for updating statistic data (statistic upload software), thefunction of which is to input the statistic data of the listeningstations usage (3), collected and stored in the local server (1), intothe central (or remote) server (1A). That software automatically sendsthe statistic data to the central (or remote) server (1A) in a presettime, provided that data already sent in previous times shall not besent any longer and may be discharged from the local server (1). Oneadvantage in having the statistic data in the central (or remote) server(1A) is that since all data are centralized, it is easier to generatecomparative reports involving more than one store.

So, in accordance with these improvements, the central (or remote)server concept (1A) was included, the purpose of which is to be arepository for all digitized CDs. It is, therefore, a central serverthat may be accessed by the local servers (1) of the stores, and also bydigitizing stations (2), via WAN (wide area network) or via Internet(4A), in order to bring to the stores the CDs demanded by users, andalso to update the central server with the CDs digitized in thedigitizing stations located in the local network environment of storesor their locations.

Moreover, pursuant to these improvements, the digitizing station (2) isalso provided with a program for updating the data (upload software),which enables to update the central (or remote) server (1A) with theinformation and song files in CDs digitized and recorded in the localserver (1) or in the very digitizing station (2). That software allowsthe immediate updating, as soon as a CD is digitized, or the updating ina preset time. It may also check whether a CD is already present in thecentral (or remote) server (1A), and by then not carry out the updating,or to update regardless such a fact. So, the digitizing station (2) maybe also used as a dedicated station, in order to input the new CDslaunches into the central (or remote) server, and, by then, be in alocal network different from the local network where the listeningstations (3) and the local server (1) are.

A third program constitutes the digitizing station (2) suite ofsoftware: the central (or remote) server maintenance software. Suchsoftware has the function of providing maintenance in the table of CDsand song files of the central (or remote) server (1A), in a manneranalog to the maintenance software embodied in the local server (1).

Also pursuant to these improvements, and as illustrated in the blockdiagram shown in FIG. 2, the listening stations (3) are hardware andfirmware apparatuses (microcontroller program) consisting of modules,the module A consisting of an interface for keyboard/display (5), wherethe keyboard and the LCD are connected, a serial interface (6), wherethe bar code reader(scanner) is onnected, a microcontroller (7), whichis the processing unit that executes the instructions of the firmwarecontained in the internal flash memory, a local network interface (8),where an Ethernet local network (4) is connected, and a RAM (9) used bythe firmware as a data area. The module B consists of a keyboard (11), aLCD (12), a bar code reader (scanner) (13), and an earphone (14), andconstitutes an independent physical module because it is in directcontact with the user. The module C consists of the audio decoder,digital/analog (D/A) converter, and the amplifying circuit for stereoaudio output; the earphone (14) of the module B is connected to thismodule C. And the module D is a power supply that provides the requiredvoltages to modules A, B, and C, and has a power supply cable (10).

Unlikely of the microcomputer, which requires an operation system anddrivers, further to the application per se, this hardware apparatusrequires, for it to operate, only a program (firmware) that controls theresources of the hardware, and which communicates with the serverprogram. The listening station firmware is responsible for requestingthe TCP connection with the server, receive asynchronous messages fromthe bar code reader (CD bar code), the keyboard (“next track”, “previoustrack”, “stop”, “volume+” and “volume−”), and from the audio module(“song end”), and to send them to the server program, receive andexecute commands sent by the server program, such as, “remove cursorfrom the display”, “clean the display”, “light up the display”, “enablethe keyboard”, “shown the message on the display”, “adjust the volumeand show the message on the display”, “store song block and startreproduction”, “store song block”, “stop song reproduction”, etc.

The final user has access only to the bar code reader, the keyboard, thedisplay, and the earphone (Module A). The communication of the hardwareapparatus with the bar code reader is made through serial ports RS-232C,RS-485, or USB, and with the keyboard by the keyboard interface. Thesound is played in the earphone by module B, which contains the audiodecoder, digital/analog converter, and output amplifier. The earphonecan be of the conventional type usually found in the market, but it mustbe provided with a steel-coil protection for preventing steals andvandalism attitudes. The bar code reader can be a laser scanner withline scanning, or a CCD technology scanner, and the keyboard may beembodied as an apparatus with simple keys, provided with keys enough toallow the user to control track selection (forward and reward), thesound volume (increase and decrease) and also reproduction interruption.Eventually, the keyboard may have more keys allowing other functions.

Local network bandwidth (4) should preferably be around 100 Mbps, takinginto account the distance between the listening stations (3) and thelocal server (1). In case of very long distances, complementaryequipment may be required.

The local network can be implemented by cables with conducting andconnecting wires linking the involved equipment, or even by anelectromagnetic wave communication means.

FIG. 3 is a flow chart of the music digitizing station (2), illustratingthe sequence of operations for carrying out music digitizing and storageon server's hard disk (1), exactly as occurs in the former U.S. Pat. No.6.437.229, and described herein in order to help the understanding ofthe equipment and process hereby improved.

Thus, the process starts by inserting an audio CD, in step E1, and alltracks are automatically selected for digitalization. In step E2, anumber corresponding to the CD bar code is provided. In step E3, adecision is made as to whether additional information in the CD (artistand title) shall be included. If so, CD additional information is inputin the step E4.

Once such information is input to the system, or if no additionalinformation is to be input, it goes to the next step E5, where thebeginning and duration of the music passage to be digitized isspecified. In step E6, the CD bar code number and, if any, additionalinformation thereon, is entered into the digital music server (1),starting the digitizing process for all tracks of the inserted CD.

In step E7, the digital reading of the first selected track is made,coding it in compacted form, recording it, promptly upon, in the digitalmusic server (1), the resulting file bearing the name formed by the barcode number and the track number.

In step E8, a determination is made whether the last selected track hasbeen digitized; if not, it returns to the step E7, reading the nextselected track, its coding and recording of the file in the digitalmusic server (1). That step E7 is repeated for every track of the CD,until the last track has been digitized.

When the answer for the step E8 is that the last track has beendigitized, it goes to step E9, which determines whether the user desireor not to digitize another CD.

If yes, it returns to step E1. If not, the digitizing and storageprocess for a passage of all audio CD tracks is accomplished.

FIGS. 4 and 4A illustrate, one after the other, the flow chart of thelocal server program, subject matter of this improvement, illustratingthe basic sequence of the operations carried out in the server forcontrolling a listening station, executing an operation cycle thatincludes from the TCP connection request up to the activation ofkeyboard keys, including the sending of the bar code, database access,and transmission of the song file.

In the initial step F1, it waits for the connection request from alistening station; when the request comes, it accepts it (step F2),which makes connection between the server and the listening station tobe established. In step F3, it sends the commands “remove cursor”,“clean display”, “enable keyboard” and “light up display” to thelistening station. Promptly upon, in step F4, it sends the command forshowing the message “Read the code bar” on the display. From that point,it waits for a bar code sent by the listening station (step F5). Whenthe bar code is received, it sends the command to show the message “Wait. . . ” on the display (step F6).

In step F7, it checks whether the CD the bar code of which was receivedexists in the local server. Should the CD the bar code of which wasreceived not exist in the local server, the message “not registered CD”is sent to a listening station (step F8), and, promptly upon, it checkswhether that CD should be searched in the central (or remote) server(step F9). If not, the flow returns to step F4, where the message “Readthe bar code” is sent. If yes, it checks if the CD should be immediatelybrought from the central (or remote) server (step F10).If the CD has notto be immediately brought, the information in the CD is saved in a listof CDs to be brought by the download software in a preset time (stepF11), and the flow returns to step F4. If the CD has to be immediatelybrought, it sends an advice together with the required information tothe download software for it to search the CD in the central (or remote)server (step F12), after what the flow proceeds in step F4.

If the CD the bar code of which exists in the local server, the databaseis accessed (step F13) and all information associated to the bar codereceived.

Next, in step F14, it sends the command for adjusting the sound volumeand to show, at the same time, the message formed by artist, tracknumber, elapsed reproduction time and volume value on the display. Instep F15, it obtains the song file and sends a command for storing thefirst block (with this block aggregated) and, at the same time, forstarting song reproduction (play). In step F16, it waits for the messagerequesting the next block sent by the listening station. When suchmessage is received, it checks whether there is a next song block to besent (step F17). If so, it sends the command for storing the aggregatedsong block (step F18) and returns to step F16. If there is not any otherblock to be sent, it sends the command “no more song blocks” (step F19)and proceeds in step F20, where it waits for some asynchronous messagefrom the listening station.

If an asynchronous message comes, it checks whether this message is the“bar code” (step F21). If it is the bar code, it sends a command forstopping song reproduction (step F22), and it comes back to step F6. Ifit is not a bar code, it checks whether it is “song end” (step F23). Ifit is “song end”, it returns to step F4. If it is not “song end”, itchecks whether it is “stop” (step F24). If it is “stop”, it sends thecommand for stopping song reproduction (step F25), and returns to stepF4. If it is not “stop”, it checks whether it is “next track” or“previous track” (step F26). If it is “next track” or “previous track”,it sends a command for stopping song reproduction (step F27), andsubsequently, in step F28, it sends a command for showing the artist,the number of the track corresponding to the next track or previoustrack, the reproduction time elapsed and the volume value on thedisplay, and it returns to the step F15. If it is not “next track” or“previous track”, it checks whether it is “volume+” or “volume−” (stepF29). If it is “volume+” or “volume−”, it sends, in step F30, a commandfor adjusting the new volume value, increasing (if it is “volume+”) ordecreasing (if it is “volume−”) and, at the same time, to show suchvalue on the display, proceeding the flow in step F31. If it is not“volume+” or “volume−” (step F31), it checks whether the asynchronousmessage is a request for updating the reproduction time elapsed. If yes,it sends a command for showing the updated elapsed time (which value isaggregated to the command) on the display (step F32) and it returns tostep F20. If not, it directly returns to step F20.

FIGS. 5 and 5A illustrate, one after the other, the flow chart of thelistening station program, which is also a subject of this improvement,illustrating the basic sequence of the operations comprehended in anoperation cycle that includes from the TCP connection request, up to theactivation of the keyboard keys, including the bar code sending, songfile receipt, and song reproduction.

In the initial step (step G1), a connection request is made with theserver. In the next step (step G2), if the connection is accepted, itgoes to the next step (step G3), where it waits for a command from theserver. If the command comes, it checks whether it is “stop”, “removecursor”, “clean display”, “enable keyboard”, “light display up”, “adjustthe volume” or “show message” (step G4).

If so, in step G5, it executes the command received; promptly upon, instep G6, it checks whether there is an asynchronous message to be sentto the server; if yes, it sends that message (step G7) and returns tostep G3; if there is no asynchronous message, it returns to step G3.

If the received command is not one of those aforementioned, if checkswhether it is “send the bar code” (step G8). If it is “send the barcode”, it checks, in step G9, whether there is a bar code to be sent; ifany, it sends (step G10) and returns to step G3. If not, it waits for abar code (step G9).

If it is not “send bar code”, it checks whether it is “store the firstsong block and start reproduction” (step G11). If it is not, it checkswhether it is “store song block” (step G12); if so, it executes thereceived command (step G13) and goes to step G16; if it is not “storethe song block”, it checks whether the command is “no more song blocks”(step G14); if so, it goes to step G16, and if it is not, it returns tostep G6. If the received command is “store the first song block andstart reproduction”, it executes the received command (step G15), andfollows to step G16, where it checks whether there is an asynchronousmessage to be sent to the server. If there is not an asynchronousmessage, it continues in step G16, waiting for some asynchronousmessage. If there is an asynchronous message, it follows to the nextstep (step G17), where it checks whether that message is “update theelapsed reproduction time”. If so, it sends that message to the serverin step G18, and waits for a command from the server, in step G19. Inthat step, if a command comes from the server, it executes it in thenext step (G20), after which it returns to step G16. If the pendingasynchronous message is not “update the elapsed reproduction time”, itchecks whether it is “volume+” or “volume−” (step G21). If so, it sendsthe asynchronous message to the server (step G22) and waits for acommand from the same (step G23). If the command comes from the server,it executes it (step G24) and returns to step G16. If the asynchronousmessage is not “volume+” nor “volume−”, it sends this message to theserver (step G25) and returns to step G3.

FIG. 6 is a flow chart of the central (or remote) server updatingprogram (upload software), illustrating the basic sequence of operationsfor updating the central (or remote) server (1A) with CDs digitized andrecorded in the local server (1) or, eventually, in the digitizingstation (2) itself, in the event it is not in the local networkenvironment of the listening stations and local server.

In step H1, it checks whether there is any CD digitized in the localserver or in the digitizing station that should be sent to the central(or remote) server. If any, the information in the CD and its song filesare sent to the central (or remote) server in step H2, after which itreturns to step H1. If not, it verifies, in step H3, whether the presettime was reached. If not, it returns to step H1. If yes, it checks, instep H4, whether there is a CD in the list of CDs to be sent to thecentral (or remote) server in the preset time. If not, it returns tostep H1. If yes, it proceeds executing step H2.

FIG. 7 is a flow chart of the program (download software) that brings,from the central (or remote) server, the information in the CD and itssong files for CDs not existing in the local server, and which have beenrequested for listening at the listening stations, or which are includedin a list of CDs to be brought in a preset time, illustrating the basicsequence of operations.

In step I1, it checks whether there is a CD to be immediately broughtfrom the central (or remote) server. If yes, it checks, in step I2, ifthe CD to be brought is present in the central (or remote) server. If itis not present, in step I3, the data of the CD in the list of CDs to bebrought in a preset time are saved, and it returns to step I1. If it ispresent, in step I4, it brings the information in the CD and its songfiles from the central (or remote) server, and the same are recorded inthe local server; having it been done, it returns to step I1. If, instep I1, there was not a CD to be immediately brought, it follows tostep I5, where it checks whether the preset time was reached. If not, itturns to step I1. If yes, it checks, in step I6, whether there is a CDin the list of CDs to be brought from the central (or remote) server. Ifthere is not, it returns to step I1. If any, it proceeds executing stepI4.

While the invention has been described in its presently preferred form,it is to be understood that there are numerous applications andimplementations for the present invention. Accordingly, the invention iscapable of modification and changes without departing from the spirit ofthe invention as set forth in the appended claims.

1. Equipment for music digitalization, storage, access and listening,comprising: a digital music server (1), a music digitizing station (2),and a variable and convenient number of listening stations (3), thelistening stations (3) being interlinked to the server (1) and to thedigitizing station (2) through a local network (4), said digital musicserver (1) being a microcomputer including a large capacity hard diskfor storing the digitized songs, and to centralize, in a database, allof the information in the digitized CDs, wherein the server (1) isprovided with a control software that allows to control the entireoperation of the listening stations (3), through commands and messagesdefined between the server (1) and the listening stations (2), whichcontrol software embodies a function that allows certain listeningstations (3), on a configurable basis, to reproduce only particular CDs;said server (1) being also provided with a local server maintenancesoftware that allows the deletion of CDs or song files corresponding tothe digitized tracks, the updating of data related to CDs in thedatabase, the listing of digitized CDs, the generation of a summary ofthe changes made during a certain period of dates for similar systems inother locations be capable of being updated, the updating of the localsystem through changes made in a system of other location, the listingof the statistic of access to CDs by the listening stations, so that itmay be possible to know which were the more accessed tracks or CDsduring a period of dates, or to know which were the more used listeningstations (3), and to obtain the automatic system update through anautoexec CD-R containing CDs input and output data and the respectivesong files; it is further provided a central (or remote) server (1A)with a large capacity hard disk also destined to store the digitizedmusic, and to centralize, in a database, all of the information in thedigitized CDs, and said central (or remote) server (1A) may be accessedby local servers (1) and by digitizing stations (2), via WAN (wide areanetwork) or via Internet (4A); the local server (1) being provided witha download software that brings, from the central (or remote) server(1A), the information in the CD and its song files, for CDs not existingin the local server (1), and which have been requested for listening atthe listening stations (3), said software enabling also the search insaid central (or remote) server (1A), in a preset time, of all CDs thebar code of which are enrolled in a list available at the local server(1); said local server (1) being provided with a program for updatingstatistic data (statistic upload software), the function of which is toinput the statistic data of the listening stations usage (3), collectedand stored in the local server (1), in the central (or remote) server(1A), which software automatically sends the statistic data to thecentral (or remote) server (1A) in a preset time, provided that dataalready sent in previous times shall not be sent any longer and may bedischarged from the local server (1); the digitizing station (2) is alsoprovided with a program for updating the data (upload software), whichenables to update the central (or remote) server (1A) with theinformation and song files in CDs digitized and recorded in the localserver (1) or in the very digitizing station (2), which software allowsthe immediate updating, as soon as a CD is digitized, or the updating ina preset time, including also the option to check whether a CD isalready present in the central (or remote) server (1A), and by then, tonot carry out the updating, or to update regardless such a fact; thedigitizing station (2) is also provided with a central or remote servermaintenance software, in a manner analog to the local server maintenancesoftware embodied in the local server (1); the listening station (3) isa hardware apparatus that requires, for it to work, only a firmware(microcontroller program) that controls the hardware resources, and thatcommunicates with the server program, and is formed by the modules A, B,C, and D, where the module A consists of an interface forkeyboard/display (5), where the keyboard and the LCD are connected, aserial interface (6), where the bar code reader is connected (scanner),a microcontroller (7) that is the processing unit that executes theinstructions of the firmware contained in the internal flash memory, anlocal network interface (8), where the Ethernet local network (4) isconnected and the RAM (9) used by the firmware as a data area; themodule B consists of a keyboard (11), LCD (12), bar code reader(scanner) (13), and an earphone (14), and forming an independentphysical module, because it is in direct contact with the user; themodule C consists of an audio decoder, a digital/analog (D/A) converter,and an amplifying circuit for stereo audio output, the earphone (14) ofmodule B being connected to that module C; the module D being a powersupply that provides the required voltages to modules A, B, and C, andhas a power supply cable (10).
 2. The equipment for musicdigitalization, storage, access and listening in accordance with claim1, wherein there are a plurality of digital music servers (1) and aplurality of digitizing stations (2).
 3. The equipment for musicdigitalization, storage, access and listening in accordance with claim1, wherein one microcomputer is the digital music server (1) and thedigitizing station (2) simultaneously.
 4. The equipment for musicdigitalization, storage, access and listening in accordance with theclaim 1, wherein providing the central (or remote) server concept (1A)was included, the purpose of which is to be a repository for alldigitized CDs, that may be accessed by the local servers (1) of thestores, and also by digitizing stations (2), via WAN (wide area network)or via Internet (4A), in order to bring to the stores the CDs demandedby users, and also to update the central server with the CDs digitizedin the digitizing stations located in the local network environment ofstores or their locations.
 5. The equipment for music digitalization,storage, access and listening in accordance with claim 1, wherein thelocal network is implemented by cables with conducting and connectingwires linking the involved equipment, or even by an electromagnetic wavecommunication means.
 6. The equipment for music digitalization, storage,access and listening in accordance with claim 1, wherein the localserver maintenance software to be installed in the local server (1) andthe central (or remote) server maintenance software to be installed inthe digitizing station (2).
 7. The equipment for music digitalization,storage, access and listening in accordance with claim 1, wherein boththe local server maintenance software and the central (or remote) servermaintenance software is installed in the local server (1).
 8. Theequipment for music digitalization, storage, access and listening inaccordance with claim 1, wherein both the local server maintenancesoftware and the central (or remote) server maintenance software isinstalled in the digitizing station (2).
 9. A process for musicdigitalization, storage, access and listening, the process forcontrolling listening stations (3) executed by a program of a programcontrolled apparatus comprising the steps of: i. waiting for aconnection request from one of the a listening stations (3); ii.requesting acceptance and establishment of a connection between theserver (1) and the listening station (3); iii. sending of commands“remove cursor”, “clean display”, “enable the keyboard” and “light upthe display” to the listening station; iv. sending a command to thelistening station for showing the message “Read the bar code” on thedisplay; v. waiting for the bar code sent by the listening station; vi.sending, upon the receipt of the bar code, a command for showing themessage “Wait . . . ” on the display; vii. checking whether the CD thebar code of which was received exists in the local server; viii. sendingthe message “CD not registered” to the listening station when the CD thebar code which was received does not exist in the local server; ix.checking whether the CD should be searched in the central (or remote)server, if no, the flow comes back to the sending step of step iv.,where the message “Read the bar code” is sent; x. checking whether theCD should be searched in the central (or remote) server,if yes, thenchecking whether the CD should be immediately brought from the central(or remote) server; xi. saving the information in the CD, if CD is notimmediately brought from the central (or remote) server, in a list ofCDs to be brought by the download software in a preset time, and theflow returns to the sending step of step iv.; xii. if the CD has to beimmediately brought from the central (or remote server), then sending anadvice, together with the required information to the download softwarefor it to search the CD in the central (or remote) server, after whichthe flow proceeds in the sending step of step iv.; xiii. if the CD thebar code exists in the local server, then accessing the database andobtaining all information associated to the bar code received; xiv.sending the command for adjusting the sound volume and, at the sametime, showing the message formed by artist, track number, elapsedreproduction time, and the volume value on the display; xv. obtaining asong file and sending a command for storing the first block (with thataggregated block) and, at the same time, to start song reproduction(play); xvi. waiting for the message request for the next block sent bythe listening station; xvii. upon the receipt of such a message,checking the existence of a next song block to be sent: xviii. if nextsong block to be sent exists, then sending the command for storing theaggregated song block and returning to the waiting step of step xvi.;xix. if the next song block to be sent does not exist, then sending thecommand “no more song blocks”; xx. waiting for some asynchronous messagefrom the listening station (3); xxi. receiving an asynchronous message,and checking whether it is a “bar code”; xxii. if asynchronous messageis a “bar code”, then sending a command for stopping song reproductionand to returning to the sending step of step vi.; xxiii. if theasynchronous message is not a “bar code”, then checking whether it is“song end” and, if yes, then returning to the sending step of step iv.;xxiv. if the message is not “song end”, then checking whether the sameis “stop”; xxv. if message is “stop”, then sending the command forstopping song reproduction and returning to the sending step of stepiv.; xxvi. if the message is not “stop”, then checking whether the sameis “next track” or “previous track”; xxvii. if the message is “nexttrack” or “previous track”, then sending the command for stopping songreproduction; xxviii. sending the command for showing the artist, thenumber of the track corresponding to the next track or the previoustrack, the elapsed reproduction time and the volume value on thedisplay, and return to the obtaining step of step xv.; xxix. if themessage is not “next track” or “previous track”, then checking whetherthe same is “volume+” or “volume−”; xxx. if the message is “volume+” or“volume−”, then sending the command for adjusting the new volume value,increasing (if“volume+”) or decreasing (if“volume−”) and, at the sametime, showing that value on the display; xxxi. if the message is not“volume+” or “volume−”, then checking whether the asynchronous messageis a request for updating the elapsed reproduction time; xxxii. if theasynchronous message is a request for updating the elapsed reproductiontime, then sending the command for showing the updated elapsed time(which value to be aggregated to the command) on the display, or, ifnot, then returning to the waiting step of step xx.
 10. A process formusic digitalization, storage, access and listening, the processexecuted by a listening station program of a program controlledapparatus comprising the steps of: i. performing a connection requestwith the server (1); ii. accepting the connection, and continuing to thenext step iii.; iii. waiting for the command from the server (1); iv.upon receiving such a command, checking whether the same is “stop”,“remove cursor”, “clean the display”, “enable the keyboard”, “light thedisplay up”, “adjust the volume” or “show message”; v. if receivedcommand is “stop”, “remove cursor”, “clean the display”, “enable thekeyboard”, “light the display up”, “adjust the volume” or “showmessage”, then executing the received command; vi. checking whetherthere is an asynchronous message to be sent to the server (1); vii. ifthere is an asynchronous message, then sending that message andreturning to waiting step of step iii., or, should there not be anyasynchronous message, then returning to the waiting step of step iii.;viii. if the received command is not one of those mentioned in step iv.,then checking whether the same is “send the bar code”; ix. if thereceived command is “send the bar code”, then checking the existence ofa bar code to be sent, and, if not, then waiting for a bar code to besent, and if yes, then proceeding to the next step; x. if there is a barcode, then sending the same and returning to the waiting step of stepiii.; xi. if the command is not “send a bar code”, then checking whetherthe same is “store the first song block and start reproduction”; xii. ifthe command is not “store the first song block and start reproduction”,then checking whether the command is “store the song block”; xiii. ifthe command is “store the song block”, then executing the receivedcommand and going to the checking step of step xvi.; xiv. if the commandis not “store the song block”, then checking whether the same is “nomore song blocks”, and, if yes, then proceeding to the checking step ofstep xvi., and, if not, then returning to the checking step of step xi.;xv. if the received command is “store the first song block and startreproduction”, then executing the same command received and proceedingto the next step; xvi. checking whether there is an asynchronous messageto be send to the server (1), and, if not, then waiting for anyasynchronous message; xvii. checking whether the asynchronous message is“update the elapsed reproduction time”, and, if not, then proceeding tostep xxi., and if it is yes, then proceeding to the next step xviii.;xviii. sending the message “update the elapsed reproduction time” to theserver (1); xix. waiting for a command from the server (1); xx.executing the server command (1) and returning to the checking step ofstep xvi.; xxi. if the pending asynchronous message in the checking stepof step xvii. is not “update the elapsed reproduction time”, thenchecking whether the same is “volume+” or “volume−”; xxii. if thepending asynchronous message in the checking step of step xvii. is“update the elapsed reproduction time”, then sending that asynchronousmessage to the server (1); xxiii. waiting for a command from the server(1); xxiv. executing the command sent by the server (1), and returningto the checking step of step xi.; xxv. if the asynchronous message isnot “volume+” nor “volume−”, then sending that message to the server(1), and returning to the waiting step of step iii.
 11. A process formusic digitalization, storage, access and listening, the process forupdating the central (or remote) server (1A), comprising the steps of:i. checking whether there is any CD digitized in the local server or inthe digitizing station that should be sent to the central (or remote)server; ii. if there is there is any CD digitized in the local server orin the digitizing station that should be sent to the central (or remote)server, then the information in the CD and its song files are sent tothe central (or remote) server, after which it returns to the checkingstep of step i.; iii. if there is there is not any CD digitized in thelocal server or in the digitizing station that should be sent to thecentral (or remote) server, then checking whether the preset time wasreached, and if not, then returning to the checking step of step i.; iv.if the preset time was reached, then checking whether there is a CD inthe list of CDs to be sent to the central (or remote) server in thepreset time, and if not, then returning to the checking step of step i.,and if yes, then proceeding to the flow executing step of step ii.
 12. Aprocess for music digitalization, storage, access and listening, theprocess for executing the download software, comprising the steps of: i.checking whether there is a CD to be immediately brought from thecentral (or remote) server; ii. if there is a CD to be immediatelybrought from the central (or remote) server, then checking whether theCD to be brought is present in the central (or remote) server; iii. ifno CD is present, then saving the data of the CD in the list of CDs tobe brought in a preset time, and returning to the checking step of stepi.; iv. if the CD is present, then bringing the information in the CDand its song files from the central (or remote) server, and the same arerecorded in the local server, returning to the checking step of step i.;if, in step i., there was not a CD to be immediately brought, thenproceeding to step v.; v. checking whether the preset time was reached,and if not, then returning to the checking step of step i.; vi. if apreset time was reached, then checking whether there is a CD in the listof CDs to be brought from the central (or remote) server, and if thereis not, then returning to the checking step of step i.; vii. if there isa CD in the list of CDs to be brought from the central (or remote)server, then proceeding to executing step iv.